Bar code symbols have been used for many years in industrial, distribution, and retail environments. More recently, two dimensional (2D) symbologies were developed that increase the data storage capacity of earlier linear symbologies. 2D symbols made according to such symbologies were also used in typical industrial, distribution, and retail environments, but added the capability, in some applications, of providing additional information without real-time access to a network and a database.
The size of 2D symbologies dictated at least the use of error detection with enhanced robustness, and also generally required the use of error correction, owing to the tendency of scanning devices to not detect a portion of a given symbol. Error correction was applied across the entire symbol. That is, if a given portion of data from the symbol was not read, then symbol-wide error correction could be used to reconstruct the missing data, resulting in a valid read of the symbol. However, if too much of the printed symbol was damaged, even if the damage was localized to only a particular area in the symbol, then the error correction for the symbol could be insufficient to reconstruct the symbol, and none of the symbol would be decoded.
However, in certain emerging markets, all the data in the symbol may not be needed for the symbol to be useful. In particular, if a small portion of the symbol is heavily damaged, then it may be useful to read the remaining portions of the symbol using error correction data corresponding to those remaining portions. Accordingly, there is a need for a symbol that can undergo significant damage to a portion of the symbol, but still be read to recover data from other, relatively undamaged portions of the symbol. Moreover, it may be useful to reproduce such a symbol, such as by printing from a bitmap or photocopying, and distributing and/or scanning copies of the symbol.